package com.high.school.validator;

import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils;
import org.springframework.validation.Validator;
import com.high.school.model.User;

public class UserValidator implements Validator {

	/**
	 * {@inheritDoc}
	 */
	@Override
	public boolean supports(Class<?> clazz) {
		// Déclare les classes supportées par ce validateur
		return User.class.isAssignableFrom(clazz);
	}

	/**
	 * {@inheritDoc}
	 */
	@Override
	public void validate(Object target, Errors errors) {

		ValidationUtils.rejectIfEmptyOrWhitespace(errors, "firstName", null,
				"Champ obligatoire : veuillez saisir votre nom");
		ValidationUtils.rejectIfEmptyOrWhitespace(errors, "lastName", null,
				"Champ obligatoire : veuillez saisir votre prénom");
		// On spécifie ici que le champ du formulaire "prenom" est requis
		ValidationUtils.rejectIfEmptyOrWhitespace(errors, "email", null,
				"Champ obligatoire : veuillez saisir un email");
		// On spécifie ici que le champ du formulaire "nom" est requis
		ValidationUtils.rejectIfEmptyOrWhitespace(errors, "password", null,
				"Champ obligatoire : veuillez saisir un password");
		ValidationUtils.rejectIfEmptyOrWhitespace(errors, "userName", null,
				"Champ obligatoire : veuillez saisir un nom d'utilisateur");
	}

}
